package com.sds.smarthome.foundation.entity;

import java.util.List;

/**
 * Created by L on 2016/4/5.
 */
public class SharedUsersResp {

    private String devId;
    private String productId;
    private String factoryDeviceId;
    private List<SharedUserInfo> sharedUsers;

    public String getDevId() {
        return devId;
    }

    public void setDevId(String devId) {
        this.devId = devId;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getFactoryDeviceId() {
        return factoryDeviceId;
    }

    public void setFactoryDeviceId(String factoryDeviceId) {
        this.factoryDeviceId = factoryDeviceId;
    }

    public List<SharedUserInfo> getSharedUsers() {
        return sharedUsers;
    }

    public void setSharedUsers(List<SharedUserInfo> sharedUsers) {
        this.sharedUsers = sharedUsers;
    }

    public static class SharedUserInfo {
        private String id;
        private String phoneNum;
        private String nickName;
        private String profileImageUrl;
        private String sex;
        private DeviceDependentUserInfo deviceDependentUserInfo;

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getPhoneNum() {
            return phoneNum;
        }

        public void setPhoneNum(String phoneNum) {
            this.phoneNum = phoneNum;
        }

        public String getNickName() {
            return nickName;
        }

        public void setNickName(String nickName) {
            this.nickName = nickName;
        }

        public String getProfileImageUrl() {
            return profileImageUrl;
        }

        public void setProfileImageUrl(String profileImageUrl) {
            this.profileImageUrl = profileImageUrl;
        }

        public String getSex() {
            return sex;
        }

        public void setSex(String sex) {
            this.sex = sex;
        }

        public DeviceDependentUserInfo getDeviceDependentUserInfo() {
            return deviceDependentUserInfo;
        }

        public void setDeviceDependentUserInfo(DeviceDependentUserInfo deviceDependentUserInfo) {
            this.deviceDependentUserInfo = deviceDependentUserInfo;
        }
    }

    public static class DeviceDependentUserInfo {
        private List<UserGroupInfo> userGroups;
        private UserAuthority authority;

        public List<UserGroupInfo> getUserGroups() {
            return userGroups;
        }

        public void setUserGroups(List<UserGroupInfo> userGroups) {
            this.userGroups = userGroups;
        }

        public UserAuthority getAuthority() {
            return authority;
        }

        public void setAuthority(UserAuthority authority) {
            this.authority = authority;
        }
    }

    public static class UserGroupInfo {
        private String groupName;
        private int groupId;

        public String getGroupName() {
            return groupName;
        }

        public void setGroupName(String groupName) {
            this.groupName = groupName;
        }

        public int getGroupId() {
            return groupId;
        }

        public void setGroupId(int groupId) {
            this.groupId = groupId;
        }
    }

    public static class UserAuthority {
        private boolean accessPermission;
        private List<String> workRooms;

        public boolean isAccessPermission() {
            return accessPermission;
        }

        public void setAccessPermission(boolean accessPermission) {
            this.accessPermission = accessPermission;
        }

        public List<String> getWorkRooms() {
            return workRooms;
        }

        public void setWorkRooms(List<String> workRooms) {
            this.workRooms = workRooms;
        }
    }
}
